FillV2 ================= 创建一个Tensor,根据指定的shape,将其值由value进行填充。 输入: - **value** - 填充值的地址 - **length** - 由指定shape计算出的张量总长度。 - **type_size** - 填充值的数据类型的长度 - **core_mask** - 核掩码。 输出: - **output** - 输出地址。 支持平台: ``FT78NE`` ``MT7004`` .. note:: - FT78NE 支持int8, int16, int32, fp32, fp64, cplx64, cplx128 - MT7004 支持fp16, fp32, int16, int32, cplx64 **共享存储版本:** .. c:function:: void anytype_fillv2_s(void* value, void* output, int length, int type_size, int core_mask) 对于不同数据类型,改变type_size参数即可。 **C调用示例:** .. code-block:: c :linenos: :emphasize-lines: 15 void main() { float* input = (float*)0xA0000000; float value = 789.1; float* output = (float*)0x88000000; int i; int length = 1000; int core_mask = 0b1111; int core_id = get_core_id(); int logic_core_id = GetLogicCoreId(core_mask, core_id); int core_num = GetCoreNum(core_mask); if (logic_core_id == 0) { *input = value; } sys_bar(0, core_num); // 初始化参数完成后进行同步 anytype_fillv2_s(input, output, length, 4, core_mask); } **私有存储版本:** .. c:function:: void anytype_fillv2_p(void* value, void* output, int length, int type_size, int core_mask) **C调用示例:** .. code-block:: c :linenos: :emphasize-lines: 9 void main() { float* input = (float*)0x10000000; float value = 789.1; float* output = (float*)0x10010000; int i; int length = 1000; int core_mask = 0b0001; // 要启动哪一个核,就将哪一位设置为1,只允许存在一个核心启动 *input = value; anytype_fillv2_p(input, output, length, 4, core_mask); }